package com.qidian.permission.mapper;

import com.qidian.permission.entity.User;
import org.apache.ibatis.annotations.Param;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;

/**
 * @Author 18林梦雅
 * @Company 起点编程
 * @Time 2023/10/18 17:59
 * @Description
 */
public interface UserMapper {

    /**
     * 根据输入的id查询用户
     * @param userId
     * @return
     */
    User selectById(Long userId);

    /**
     * 添加用户的接口开发
     * @param user
     * @return
     */
    int addUser( User user);

    /**
     * 添加的同时查询用户名是否存在
     * @param username
     * @return
     */
    User selectByUsername(String username);

    /**
     * 查询多条数据，分页形式
     * @param user
     * @param start
     * @param limit
     * @return
     */
    List<User> selectByPage(@Param("user")User user, @Param("start") Integer start, @Param("limit") Integer limit);

    /**
     * 查询总条数
     * @param user
     * @return
     */
    Integer selectCount(User user);


    /**
     * 修改数据更新
     * @param user
     * @return
     */
    Integer update(User user);

    Integer deleteUpdateStatus(Long userId);

    Integer deleteUpdateSelect(Long[] userIds);
}
